﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace USMC.Net
{
    static class ParametersNames
    {
        public static string[] StateDefs =
        {
            "Текущая позиция, 1/8 шага", //curpos
            "Температура, °C", //temp
            "Делитель шага",  //sdivisor
            "Напряжение питания по X", //voltage
            "Напряжение питания по Y",
            "Питание по X",  //power
            "Питание по Y",
            "Мощность по X", //fullpower
            "Мощность по Y",
            "Скорость по X", //fullspeed
            "Скорость по Y",
            "Сдвиг по X (мертвый ход)", //loft
            "Сдвиг по Y (мертвый ход)",
            "Вращение по X", //cw_cww
            "Вращение по Y",
            "Мотор по X", //areset
            "Мотор по Y",
            "Мотор по X",  //run
            "Мотор по Y",
            "Внешний синхроимпульс X", //syncin
            "Внешний синхроимпульс Y",
            "Внутренний синхроимпульс X", //syncout
            "Внутренний синхроимпульс Y",
            "Логический сигнал датчика вращательного движения X", //rotTr
            "Логический сигнал датчика вращательного движения Y",
            "Состояние датчика вращательного движения X", //rotTrErr
            "Состояние датчика вращательного движения Y",
            "Аварийная остановка X", //EmReset
            "Аварийная остановка Y",
            "Сигнал левого ограничителя", //trailer11
            "Сигнал правого ограничителя", //trailer21
            "Сигнал нижнего ограничителя", //trailer12
            "Сигнал верхнего ограничителя",//trailer 22
        };
        public static string[] StateTrueVals =
        {
            "подается",  //power
            "подается",
            "полная", //fullpower
            "полная",
            "полная", //fullspeed
            "полная",
            "да", //loft
            "да",
            "по часовой стрелке", //cw_cww
            "по часовой стрелке",
            "перезапущен", //areset
            "перезапущен",
            "в движении",  //run
            "в движении",
            "1", //syncin
            "1",
            "1", //syncout
            "1",
            "1", //rotTr
            "1",
            "Ошибка", //rotTrErr
            "Ошибка",
            "применена", //EmReset
            "применена",
            "1", //trailer11
            "1", //trailer21
            "1", //trailer12
            "1",//trailer 22
        };
        public static string[] StateFalseVals =
        {
            "не подается",  //power
            "не подается",
            "неполная", //fullpower
            "неполная",
            "неполная", //fullspeed
            "неполная",
            "нет", //loft
            "нет",
            "против часовой стрелки", //cw_cww
            "против часовой стрелки",
            "не перезапущен", //areset
            "не перезапущен",
            "в простое",  //run
            "в простое",
            "0", //syncin
            "0",
            "0", //syncout
            "0",
            "0", //rotTr
            "0",
            "В норме", //rotTrErr
            "В норме",
            "не применена", //EmReset
            "не применена",
            "0", //trailer11
            "0", //trailer21
            "0", //trailer12
            "0",//trailer 22
        };
        public static string[] ModeDefs =
        {
            "Кнопки управления X",
            "Кнопки управления Y",
            "Режим пониженного энергопотребления X",
            "Режим пониженного энергопотребления Y",
            "Отключить питание и произвести полный шаг", //ResetD 1,2
            "Логический сигнал левого ограничителя", //Tr1T1
            "Логический сигнал правого ограничителя", //Tr2T1
            "Логический сигнал нижнего ограничителя", //Tr1T2
            "Логический сигнал верхнего ограничителя", //Tr2T2
            "Логический сигнал датчика вращательного движения по X", //RotTrT1
            "Логический сигнал датчика вращательного движения по Y", //RotTrT2
            "Положения левого и правого ограничителей", //TRSwap
            "Положения нижнего и верхнего ограничителей",
            "Левый ограничитель", //Tr1En 1
            "Правый ограничитель",
            "Нижний ограничитель",
            "Верхний ограничитель",
            "Логический сигнал первой кнопки X", //Butt1T 1
            "Логический сигнал второй кнопки X",
            "Логический сигнал первой кнопки Y",
            "Логический сигнал второй кнопки Y",
            "Выходная синхронизация X", //SyncOutEn
            "Выходная синхронизация Y",
            "Режим внешней синхронизации X", //SyncInOp
            "Режим внешней синхронизации Y",

            "Количество шагов до выходного синхроимпульса X", //SyncCount
            "Количество шагов до выходного синхроимпульса Y",

            "Выходной синхроимпульс X", //SyncInvert
            "Выходной синхроимпульс Y",
            "Датчик вращательного движения X", //RotTeEn
            "Датчик вращательного движения Y",
            "Энкодер X", //EncoderEn
            "Энкодер Y",

            "Инвертировать направление счетчика энкодера X", //EncoderInv
            "Инвертировать направление счетчика энкодера Y",
            "Сбросить энкодер X", //ResBEnc
            "Сбросить энкодер Y",
            "Уравнять данные энкодера X", //ResEn
            "Уравнять данные энкодера Y",
            "Сбросить оценки смещения датчика вращательного движения", //ResetRT 1,2
            "Сброс счетчика выходного синхроимпульса X", //SyncOutR
            "Сброс счетчика выходного синхроимпульса Y",
        };
        public static string[] ModeYesVals =
        {
            "Отключены",
            "Отключены",
            "Включен",
            "Включен",
            "Включено", //ResetD 1,2
            "+3/+5,В", //Tr1T1
            "+3/+5,В", //Tr2T1
            "+3/+5,В", //Tr1T2
            "+3/+5,В", //Tr2T2
            "+3/+5,В", //RotTrT1
            "+3/+5,В", //RotTrT2
            "Инвертировать", //TRSwap
            "Инвертировать",
            "Включен", //Tr1En 1
            "Включен",
            "Включен",
            "Включен",
            "+3/+5,В", //Butt1T 1
            "+3/+5,В",
            "+3/+5,В",
            "+3/+5,В",
            "Включена", //SyncOutEn
            "Включена",
            "1", //SyncInOp
            "1",
            "Инвертировать", //SyncInvert
            "Инвертировать",
            "Включен", //RotTeEn
            "Включен",
            "Включен", //EncoderEn
            "Включен",
        };
        public static string[] ModeNoVals =
        {
            "Включены",
            "Включены",
            "Отключен",
            "Отключен",
            "Отключено", //ResetD 1,2
            "0,В", //Tr1T1
            "0,В", //Tr2T1
            "0,В", //Tr1T2
            "0,В", //Tr2T2
            "0,В", //RotTrT1
            "0,В", //RotTrT2
            "Не инвертировать", //TRSwap
            "Не инвертировать",
            "Отключен", //Tr1En 1
            "Отключен",
            "Отключен",
            "Отключен",
            "0,В", //Butt1T 1
            "0,В",
            "0,В",
            "0,В",
            "Отключена", //SyncOutEn
            "Отключена",
            "0", //SyncInOp
            "0",
            "Не инвертировать", //SyncInvert
            "Не инвертировать",
            "Отключен", //RotTeEn
            "Отключен",
            "Отключен", //EncoderEn
            "Отключен",
        };
        public static string[] ParametersDefs =
        {
            "Скорость во время сброса X", //MinP
            "Скорость во время сброса Y",
            "Максимальное смещение X", //MaxLoft
            "Максимальное смещение Y",
            "Шагов в полном обороте X", //RTDelta
            "Шагов в полном обороте Y",
            "Пропущенных шагов до ошибки X", //RTMinErr
            "Пропущенных шагов до ошибки Y",
            "Максимальная температура", //MaxTemp1,2
            "Продолжительность синхроимпулься X", //SyncOutp
            "Продолжительность синхроимпулься Y",
            "Скорость последней стадии мертвого хода X", //LoftPeriod
            "Скорость последней стадии мертвого хода Y",
            "Делитель энкодера X", //EncMult
            "Делитель энкодера Y",
        };
    }
}
